#位置参数  调用函数时根据函数定义的参数位置来传递参数
def user_info(name,age,gender):
    print(f'您的名字是{name},年龄是{age}，性别是{gender}')

user_info('赵玉梅',20,'女')

#关键字传参     通过“键”=“值”的形式指定
def user_info1(name,age,gender):
    print(f'您的名字是{name},年龄是{age}，性别是{gender}')
user_info1('李牧芸',gender='女',age=3)
user_info1('Tom',age=20,gender='男')

#缺省参数，也叫默认参数
def user_info2(name,age,gender='男'):
    print(f'您的名字是{name},年龄是{age}，性别是{gender}')
user_info2('李牧芸', age=3)
user_info2('李冀', age=3,gender='女')

#不定长参数，也叫可变半数，由于不确定调用的时候会传递多少个参数
#包裹位置传递
def user_info3(*args):
    print(args)
list1=[1,2,3]
user_info3(*list1)

#包裹关键字传递
def user_info4(**kwargs):
    print(kwargs)
dict1={'name':'Tom','age':18,'id':100}
user_info4(**dict1)